package com.uzai.console.service.pyq;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.uzai.console.dto.pyq.pyqcommenttemplate.PyqCommentTemplateQuery;
import com.uzai.console.dto.pyq.pyqdeviceplan.PyqDevicePlanDto;
import com.uzai.console.dto.pyq.pyqdeviceplan.PyqDevicePlanIdDto;
import com.uzai.console.dto.pyq.pyqdeviceplan.PyqDevicePlanQuery;
import com.uzai.console.entity.PyqDevicePlan;
import com.uzai.console.vo.base.SelectKeyVo;
import com.uzai.console.vo.pyq.pyqdeviceplan.PyqDevicePlanVo;

import java.util.List;

/**
 * 朋友圈设备方案
 * @author liuqi
 * @date 2021年08月13日 11:33
 */
public interface PyqDevicePlanService {

    /**
     * 查询朋友圈设备方案列表
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param query
     * @return null
     */
    Page<PyqDevicePlanVo> findPyqDevicePlanList(PyqDevicePlanQuery query);

    /**
     * 查询朋友圈设备方案详情
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param pyqDevicePlanIdDto
     * @return null
     */
    PyqDevicePlanVo findPyqDevicePlan(PyqDevicePlanIdDto pyqDevicePlanIdDto);

    /**
     * 添加朋友圈设备方案
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param pyqDevicePlanDto
     * @return null
     */
    void addPyqDevicePlan(PyqDevicePlanDto pyqDevicePlanDto);

    /**
     * 修改朋友圈设备方案
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param pyqDevicePlanDto
     * @return null
     */
    void updatePyqDevicePlan(PyqDevicePlanDto pyqDevicePlanDto);

    /**
     * 删除
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param pyqDevicePlanIdDto
     * @return null
     */
    void deletePyqDevicePlan(PyqDevicePlanIdDto pyqDevicePlanIdDto);

    /**
     * 查询朋友圈设备方案下拉列表
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param query
     * @return null
     */
    List<SelectKeyVo> findSelectList(PyqDevicePlanQuery query);

    /**
     * 检测设备方案是否能正常转链
     * @author liuqi
     * @date 2021/8/13 11:38
     * @param pyqDevicePlan
     * @return null
     */
    boolean validatePyqDevicePlan(PyqDevicePlan pyqDevicePlan);


}
